﻿using System.Collections;

namespace CodeSnippet.Config
{
    /// <summary>
    /// Interface defining the properties used in the style logic.
    /// </summary>
    public interface IStyleConfig
    {
        #region Properties
        /// <summary>
        /// Flag indicating whether or not lines will have alternating background colors.
        /// </summary>
        bool AlternateLines { get; set; }
        /// <summary>
        /// Flag indicating whether or not the CSS styles used will be embedded with the HTML output.
        /// </summary>
        bool EmbedStyles { get; set; }
        /// <summary>
        /// Flag indicating whether or not line numbers are generated.
        /// </summary>
        bool LineNumbers { get; set; }
        /// <summary>
        /// Flag indicating whether or not to use a container for the generated code.
        /// </summary>
        bool UseContainer { get; set; }
        /// <summary>
        /// Cascading style sheet definitions for different code snippet styles.
        /// </summary>
        Hashtable StyleMap { get; }
        #endregion Properties
    }
}
